[INFO] cloning repository https://github.com/reversed-R/hindley-milner-type-inference
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/reversed-R/hindley-milner-type-inference" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Freversed-R%2Fhindley-milner-type-inference", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Freversed-R%2Fhindley-milner-type-inference'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 7e92daa59ef3c4e6613cbed9fd2ce7d95d683433
[INFO] testing reversed-R/hindley-milner-type-inference against try#0abe69e6c16114311cc2700e972492e64d69c28f for pr-154065-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Freversed-R%2Fhindley-milner-type-inference" "/workspace/builds/worker-2-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/reversed-R/hindley-milner-type-inference
[INFO] finished tweaking git repo https://github.com/reversed-R/hindley-milner-type-inference
[INFO] tweaked toml for git repo https://github.com/reversed-R/hindley-milner-type-inference written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/reversed-R/hindley-milner-type-inference on toolchain 0abe69e6c16114311cc2700e972492e64d69c28f
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/reversed-R/hindley-milner-type-inference already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 224795aa216d2cbb7d5977b2d5dc8f9c4a3d36f0a329fcc9d84f98df466057e4
[INFO] running `Command { std: "docker" "start" "-a" "224795aa216d2cbb7d5977b2d5dc8f9c4a3d36f0a329fcc9d84f98df466057e4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "224795aa216d2cbb7d5977b2d5dc8f9c4a3d36f0a329fcc9d84f98df466057e4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "224795aa216d2cbb7d5977b2d5dc8f9c4a3d36f0a329fcc9d84f98df466057e4", kill_on_drop: false }`
[INFO] [stdout] 224795aa216d2cbb7d5977b2d5dc8f9c4a3d36f0a329fcc9d84f98df466057e4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 0cf2080c8a974b758d72f23fa619f0e11b704d6e79c908bca68e40f5ddd4770e
[INFO] running `Command { std: "docker" "start" "-a" "0cf2080c8a974b758d72f23fa619f0e11b704d6e79c908bca68e40f5ddd4770e", kill_on_drop: false }`
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling regex-syntax v0.8.8
[INFO] [stderr]    Compiling jiff v0.2.18
[INFO] [stderr]    Compiling anstream v0.6.21
[INFO] [stderr]    Compiling regex-automata v0.4.13
[INFO] [stderr]    Compiling regex v1.12.2
[INFO] [stderr]    Compiling env_filter v0.1.4
[INFO] [stderr]    Compiling env_logger v0.11.8
[INFO] [stderr]    Compiling hindley-milner-type-inference v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `log::info`
[INFO] [stdout]  --> src/ast.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use log::info;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Ast` is never constructed
[INFO] [stdout]  --> src/ast.rs:5:19
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub(crate) struct Ast {
[INFO] [stdout]   |                   ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Stmt` is never used
[INFO] [stdout]  --> src/ast.rs:9:17
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub(crate) enum Stmt {
[INFO] [stdout]   |                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `VarDecl` is never constructed
[INFO] [stdout]   --> src/ast.rs:13:19
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub(crate) struct VarDecl {
[INFO] [stdout]    |                   ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Expr` is never used
[INFO] [stdout]   --> src/ast.rs:18:17
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub(crate) enum Expr {
[INFO] [stdout]    |                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Literal` is never used
[INFO] [stdout]   --> src/ast.rs:25:17
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub(crate) enum Literal {
[INFO] [stdout]    |                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `VarName` is never constructed
[INFO] [stdout]   --> src/ast.rs:32:19
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub(crate) struct VarName(pub(crate) String);
[INFO] [stdout]    |                   ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LambdaExpr` is never constructed
[INFO] [stdout]   --> src/ast.rs:34:19
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub(crate) struct LambdaExpr {
[INFO] [stdout]    |                   ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CallExpr` is never constructed
[INFO] [stdout]   --> src/ast.rs:39:19
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub(crate) struct CallExpr {
[INFO] [stdout]    |                   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TyVar` is never constructed
[INFO] [stdout]  --> src/infer.rs:9:12
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub struct TyVar(pub usize);
[INFO] [stdout]   |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Ty` is never used
[INFO] [stdout]   --> src/infer.rs:12:10
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub enum Ty {
[INFO] [stdout]    |          ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FnTy` is never constructed
[INFO] [stdout]   --> src/infer.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct FnTy {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Scheme` is never constructed
[INFO] [stdout]   --> src/infer.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub struct Scheme {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TyEnv` is never constructed
[INFO] [stdout]   --> src/infer.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub struct TyEnv {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Infer` is never constructed
[INFO] [stdout]   --> src/infer.rs:40:12
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub struct Infer {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `TyError` is never used
[INFO] [stdout]   --> src/infer.rs:46:10
[INFO] [stdout]    |
[INFO] [stdout] 46 | pub enum TyError {
[INFO] [stdout]    |          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `TyResult` is never used
[INFO] [stdout]   --> src/infer.rs:56:6
[INFO] [stdout]    |
[INFO] [stdout] 56 | type TyResult<T> = Result<T, TyError>;
[INFO] [stdout]    |      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/infer.rs:59:12
[INFO] [stdout]     |
[INFO] [stdout]  58 | impl Infer {
[INFO] [stdout]     | ---------- associated items in this implementation
[INFO] [stdout]  59 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  66 |     fn fresh(&mut self) -> Ty {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  72 |     fn apply(&self, t: Ty) -> Ty {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  89 |     fn unify(&mut self, t1: Ty, t2: Ty) -> TyResult<()> {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 126 |     fn ftv(t: &Ty) -> HashSet<TyVar> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 141 |     fn ftv_scheme(s: &Scheme) -> HashSet<TyVar> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 149 |     fn ftv_env(env: &TyEnv) -> HashSet<TyVar> {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 153 |     fn instantiate(&mut self, s: &Scheme) -> Ty {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 174 |     fn infer_expr(&mut self, env: &mut TyEnv, expr: &Expr) -> TyResult<Ty> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `occurs` is never used
[INFO] [stdout]    --> src/infer.rs:235:4
[INFO] [stdout]     |
[INFO] [stdout] 235 | fn occurs(v: &TyVar, t: &Ty) -> bool {
[INFO] [stdout]     |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `InferedTys` is never constructed
[INFO] [stdout]    --> src/infer.rs:244:12
[INFO] [stdout]     |
[INFO] [stdout] 244 | pub struct InferedTys {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `infer_ast` is never used
[INFO] [stdout]    --> src/infer.rs:249:8
[INFO] [stdout]     |
[INFO] [stdout] 249 | pub fn infer_ast(ast: &Ast) -> TyResult<InferedTys> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `can_apply` is never used
[INFO] [stdout]    --> src/infer.rs:279:12
[INFO] [stdout]     |
[INFO] [stdout] 277 | impl InferedTys {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] 278 |     // for test
[INFO] [stdout] 279 |     pub fn can_apply(&self, var: &VarName, f: FnTy) -> TyResult<()> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 9.87s
[INFO] running `Command { std: "docker" "inspect" "0cf2080c8a974b758d72f23fa619f0e11b704d6e79c908bca68e40f5ddd4770e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0cf2080c8a974b758d72f23fa619f0e11b704d6e79c908bca68e40f5ddd4770e", kill_on_drop: false }`
[INFO] [stdout] 0cf2080c8a974b758d72f23fa619f0e11b704d6e79c908bca68e40f5ddd4770e
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 9ff2deb115eb659b56392c0be5f86212c7a876f088025396176e8b79da9ee70e
[INFO] running `Command { std: "docker" "start" "-a" "9ff2deb115eb659b56392c0be5f86212c7a876f088025396176e8b79da9ee70e", kill_on_drop: false }`
[INFO] [stdout] warning: unused import: `log::info`
[INFO] [stdout]  --> src/ast.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use log::info;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Ast` is never constructed
[INFO] [stdout]  --> src/ast.rs:5:19
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub(crate) struct Ast {
[INFO] [stdout]   |                   ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Stmt` is never used
[INFO] [stdout]  --> src/ast.rs:9:17
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub(crate) enum Stmt {
[INFO] [stdout]   |                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `VarDecl` is never constructed
[INFO] [stdout]   --> src/ast.rs:13:19
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub(crate) struct VarDecl {
[INFO] [stdout]    |                   ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Expr` is never used
[INFO] [stdout]   --> src/ast.rs:18:17
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub(crate) enum Expr {
[INFO] [stdout]    |                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Literal` is never used
[INFO] [stdout]   --> src/ast.rs:25:17
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub(crate) enum Literal {
[INFO] [stdout]    |                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `VarName` is never constructed
[INFO] [stdout]   --> src/ast.rs:32:19
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub(crate) struct VarName(pub(crate) String);
[INFO] [stdout]    |                   ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LambdaExpr` is never constructed
[INFO] [stdout]   --> src/ast.rs:34:19
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub(crate) struct LambdaExpr {
[INFO] [stdout]    |                   ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CallExpr` is never constructed
[INFO] [stdout]   --> src/ast.rs:39:19
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub(crate) struct CallExpr {
[INFO] [stdout]    |                   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling hindley-milner-type-inference v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: struct `TyVar` is never constructed
[INFO] [stdout]  --> src/infer.rs:9:12
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub struct TyVar(pub usize);
[INFO] [stdout]   |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Ty` is never used
[INFO] [stdout]   --> src/infer.rs:12:10
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub enum Ty {
[INFO] [stdout]    |          ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FnTy` is never constructed
[INFO] [stdout]   --> src/infer.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct FnTy {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Scheme` is never constructed
[INFO] [stdout]   --> src/infer.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub struct Scheme {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TyEnv` is never constructed
[INFO] [stdout]   --> src/infer.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub struct TyEnv {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Infer` is never constructed
[INFO] [stdout]   --> src/infer.rs:40:12
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub struct Infer {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `TyError` is never used
[INFO] [stdout]   --> src/infer.rs:46:10
[INFO] [stdout]    |
[INFO] [stdout] 46 | pub enum TyError {
[INFO] [stdout]    |          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `TyResult` is never used
[INFO] [stdout]   --> src/infer.rs:56:6
[INFO] [stdout]    |
[INFO] [stdout] 56 | type TyResult<T> = Result<T, TyError>;
[INFO] [stdout]    |      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/infer.rs:59:12
[INFO] [stdout]     |
[INFO] [stdout]  58 | impl Infer {
[INFO] [stdout]     | ---------- associated items in this implementation
[INFO] [stdout]  59 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  66 |     fn fresh(&mut self) -> Ty {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  72 |     fn apply(&self, t: Ty) -> Ty {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  89 |     fn unify(&mut self, t1: Ty, t2: Ty) -> TyResult<()> {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 126 |     fn ftv(t: &Ty) -> HashSet<TyVar> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 141 |     fn ftv_scheme(s: &Scheme) -> HashSet<TyVar> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 149 |     fn ftv_env(env: &TyEnv) -> HashSet<TyVar> {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 153 |     fn instantiate(&mut self, s: &Scheme) -> Ty {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 174 |     fn infer_expr(&mut self, env: &mut TyEnv, expr: &Expr) -> TyResult<Ty> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `occurs` is never used
[INFO] [stdout]    --> src/infer.rs:235:4
[INFO] [stdout]     |
[INFO] [stdout] 235 | fn occurs(v: &TyVar, t: &Ty) -> bool {
[INFO] [stdout]     |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `InferedTys` is never constructed
[INFO] [stdout]    --> src/infer.rs:244:12
[INFO] [stdout]     |
[INFO] [stdout] 244 | pub struct InferedTys {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `infer_ast` is never used
[INFO] [stdout]    --> src/infer.rs:249:8
[INFO] [stdout]     |
[INFO] [stdout] 249 | pub fn infer_ast(ast: &Ast) -> TyResult<InferedTys> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `can_apply` is never used
[INFO] [stdout]    --> src/infer.rs:279:12
[INFO] [stdout]     |
[INFO] [stdout] 277 | impl InferedTys {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] 278 |     // for test
[INFO] [stdout] 279 |     pub fn can_apply(&self, var: &VarName, f: FnTy) -> TyResult<()> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `log::info`
[INFO] [stdout]  --> src/ast.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use log::info;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Bool` is never constructed
[INFO] [stdout]   --> src/ast.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub(crate) enum Literal {
[INFO] [stdout]    |                 ------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 28 |     Bool(bool),
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `VariableConflicted` and `TypeVariableNotCallable` are never constructed
[INFO] [stdout]   --> src/infer.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 46 | pub enum TyError {
[INFO] [stdout]    |          ------- variants in this enum
[INFO] [stdout] 47 |     VariableNotFound(VarName),
[INFO] [stdout] 48 |     VariableConflicted(VarName),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 49 |
[INFO] [stdout] 50 |     TypeVariableNotCallable(TyVar),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TyError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `ftv`, `ftv_scheme`, and `ftv_env` are never used
[INFO] [stdout]    --> src/infer.rs:126:8
[INFO] [stdout]     |
[INFO] [stdout]  58 | impl Infer {
[INFO] [stdout]     | ---------- associated functions in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 126 |     fn ftv(t: &Ty) -> HashSet<TyVar> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 141 |     fn ftv_scheme(s: &Scheme) -> HashSet<TyVar> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 149 |     fn ftv_env(env: &TyEnv) -> HashSet<TyVar> {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1.04s
[INFO] running `Command { std: "docker" "inspect" "9ff2deb115eb659b56392c0be5f86212c7a876f088025396176e8b79da9ee70e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9ff2deb115eb659b56392c0be5f86212c7a876f088025396176e8b79da9ee70e", kill_on_drop: false }`
[INFO] [stdout] 9ff2deb115eb659b56392c0be5f86212c7a876f088025396176e8b79da9ee70e
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 96932b81c9d23a0165e68d86915f40e8fa1649c7888e6e73143e126de1095d11
[INFO] running `Command { std: "docker" "start" "-a" "96932b81c9d23a0165e68d86915f40e8fa1649c7888e6e73143e126de1095d11", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `log::info`
[INFO] [stderr]  --> src/ast.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 | use log::info;
[INFO] [stderr]   |     ^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Ast` is never constructed
[INFO] [stderr]  --> src/ast.rs:5:19
[INFO] [stderr]   |
[INFO] [stderr] 5 | pub(crate) struct Ast {
[INFO] [stderr]   |                   ^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: enum `Stmt` is never used
[INFO] [stderr]  --> src/ast.rs:9:17
[INFO] [stderr]   |
[INFO] [stderr] 9 | pub(crate) enum Stmt {
[INFO] [stderr]   |                 ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `VarDecl` is never constructed
[INFO] [stderr]   --> src/ast.rs:13:19
[INFO] [stderr]    |
[INFO] [stderr] 13 | pub(crate) struct VarDecl {
[INFO] [stderr]    |                   ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: enum `Expr` is never used
[INFO] [stderr]   --> src/ast.rs:18:17
[INFO] [stderr]    |
[INFO] [stderr] 18 | pub(crate) enum Expr {
[INFO] [stderr]    |                 ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: enum `Literal` is never used
[INFO] [stderr]   --> src/ast.rs:25:17
[INFO] [stderr]    |
[INFO] [stderr] 25 | pub(crate) enum Literal {
[INFO] [stderr]    |                 ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `VarName` is never constructed
[INFO] [stderr]   --> src/ast.rs:32:19
[INFO] [stderr]    |
[INFO] [stderr] 32 | pub(crate) struct VarName(pub(crate) String);
[INFO] [stderr]    |                   ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `LambdaExpr` is never constructed
[INFO] [stderr]   --> src/ast.rs:34:19
[INFO] [stderr]    |
[INFO] [stderr] 34 | pub(crate) struct LambdaExpr {
[INFO] [stderr]    |                   ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `CallExpr` is never constructed
[INFO] [stderr]   --> src/ast.rs:39:19
[INFO] [stderr]    |
[INFO] [stderr] 39 | pub(crate) struct CallExpr {
[INFO] [stderr]    |                   ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `TyVar` is never constructed
[INFO] [stderr]  --> src/infer.rs:9:12
[INFO] [stderr]   |
[INFO] [stderr] 9 | pub struct TyVar(pub usize);
[INFO] [stderr]   |            ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: enum `Ty` is never used
[INFO] [stderr]   --> src/infer.rs:12:10
[INFO] [stderr]    |
[INFO] [stderr] 12 | pub enum Ty {
[INFO] [stderr]    |          ^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `FnTy` is never constructed
[INFO] [stderr]   --> src/infer.rs:21:12
[INFO] [stderr]    |
[INFO] [stderr] 21 | pub struct FnTy {
[INFO] [stderr]    |            ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Scheme` is never constructed
[INFO] [stderr]   --> src/infer.rs:29:12
[INFO] [stderr]    |
[INFO] [stderr] 29 | pub struct Scheme {
[INFO] [stderr]    |            ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `TyEnv` is never constructed
[INFO] [stderr]   --> src/infer.rs:35:12
[INFO] [stderr]    |
[INFO] [stderr] 35 | pub struct TyEnv {
[INFO] [stderr]    |            ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Infer` is never constructed
[INFO] [stderr]   --> src/infer.rs:40:12
[INFO] [stderr]    |
[INFO] [stderr] 40 | pub struct Infer {
[INFO] [stderr]    |            ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: enum `TyError` is never used
[INFO] [stderr]   --> src/infer.rs:46:10
[INFO] [stderr]    |
[INFO] [stderr] 46 | pub enum TyError {
[INFO] [stderr]    |          ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: type alias `TyResult` is never used
[INFO] [stderr]   --> src/infer.rs:56:6
[INFO] [stderr]    |
[INFO] [stderr] 56 | type TyResult<T> = Result<T, TyError>;
[INFO] [stderr]    |      ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: multiple associated items are never used
[INFO] [stderr]    --> src/infer.rs:59:12
[INFO] [stderr]     |
[INFO] [stderr]  58 | impl Infer {
[INFO] [stderr]     | ---------- associated items in this implementation
[INFO] [stderr]  59 |     pub fn new() -> Self {
[INFO] [stderr]     |            ^^^
[INFO] [stderr] ...
[INFO] [stderr]  66 |     fn fresh(&mut self) -> Ty {
[INFO] [stderr]     |        ^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  72 |     fn apply(&self, t: Ty) -> Ty {
[INFO] [stderr]     |        ^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  89 |     fn unify(&mut self, t1: Ty, t2: Ty) -> TyResult<()> {
[INFO] [stderr]     |        ^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 126 |     fn ftv(t: &Ty) -> HashSet<TyVar> {
[INFO] [stderr]     |        ^^^
[INFO] [stderr] ...
[INFO] [stderr] 141 |     fn ftv_scheme(s: &Scheme) -> HashSet<TyVar> {
[INFO] [stderr]     |        ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 149 |     fn ftv_env(env: &TyEnv) -> HashSet<TyVar> {
[INFO] [stderr]     |        ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 153 |     fn instantiate(&mut self, s: &Scheme) -> Ty {
[INFO] [stderr]     |        ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 174 |     fn infer_expr(&mut self, env: &mut TyEnv, expr: &Expr) -> TyResult<Ty> {
[INFO] [stderr]     |        ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `occurs` is never used
[INFO] [stderr]    --> src/infer.rs:235:4
[INFO] [stderr]     |
[INFO] [stderr] 235 | fn occurs(v: &TyVar, t: &Ty) -> bool {
[INFO] [stderr]     |    ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `InferedTys` is never constructed
[INFO] [stderr]    --> src/infer.rs:244:12
[INFO] [stderr]     |
[INFO] [stderr] 244 | pub struct InferedTys {
[INFO] [stderr]     |            ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `infer_ast` is never used
[INFO] [stderr]    --> src/infer.rs:249:8
[INFO] [stderr]     |
[INFO] [stderr] 249 | pub fn infer_ast(ast: &Ast) -> TyResult<InferedTys> {
[INFO] [stderr]     |        ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `can_apply` is never used
[INFO] [stderr]    --> src/infer.rs:279:12
[INFO] [stderr]     |
[INFO] [stderr] 277 | impl InferedTys {
[INFO] [stderr]     | --------------- method in this implementation
[INFO] [stderr] 278 |     // for test
[INFO] [stderr] 279 |     pub fn can_apply(&self, var: &VarName, f: FnTy) -> TyResult<()> {
[INFO] [stderr]     |            ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variant `Bool` is never constructed
[INFO] [stderr]   --> src/ast.rs:28:5
[INFO] [stderr]    |
[INFO] [stderr] 25 | pub(crate) enum Literal {
[INFO] [stderr]    |                 ------- variant in this enum
[INFO] [stderr] ...
[INFO] [stderr] 28 |     Bool(bool),
[INFO] [stderr]    |     ^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variants `VariableConflicted` and `TypeVariableNotCallable` are never constructed
[INFO] [stderr]   --> src/infer.rs:48:5
[INFO] [stderr]    |
[INFO] [stderr] 46 | pub enum TyError {
[INFO] [stderr]    |          ------- variants in this enum
[INFO] [stderr] 47 |     VariableNotFound(VarName),
[INFO] [stderr] 48 |     VariableConflicted(VarName),
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 49 |
[INFO] [stderr] 50 |     TypeVariableNotCallable(TyVar),
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `TyError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: associated functions `ftv`, `ftv_scheme`, and `ftv_env` are never used
[INFO] [stderr]    --> src/infer.rs:126:8
[INFO] [stderr]     |
[INFO] [stderr]  58 | impl Infer {
[INFO] [stderr]     | ---------- associated functions in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 126 |     fn ftv(t: &Ty) -> HashSet<TyVar> {
[INFO] [stderr]     |        ^^^
[INFO] [stderr] ...
[INFO] [stderr] 141 |     fn ftv_scheme(s: &Scheme) -> HashSet<TyVar> {
[INFO] [stderr]     |        ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 149 |     fn ftv_env(env: &TyEnv) -> HashSet<TyVar> {
[INFO] [stderr]     |        ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `hindley-milner-type-inference` (lib) generated 22 warnings (run `cargo fix --lib -p hindley-milner-type-inference` to apply 1 suggestion)
[INFO] [stderr] warning: `hindley-milner-type-inference` (lib test) generated 4 warnings (1 duplicate)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.09s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/hindley_milner_type_inference-e7ba6dd12bf8cfda)
[INFO] [stdout] 
[INFO] [stdout] running 2 tests
[INFO] [stderr]    Doc-tests hindley_milner_type_inference
[INFO] [stdout] test tests::test1 ... ok
[INFO] [stdout] test tests::test2 ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "96932b81c9d23a0165e68d86915f40e8fa1649c7888e6e73143e126de1095d11", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "96932b81c9d23a0165e68d86915f40e8fa1649c7888e6e73143e126de1095d11", kill_on_drop: false }`
[INFO] [stdout] 96932b81c9d23a0165e68d86915f40e8fa1649c7888e6e73143e126de1095d11
